namespace ShareMarking.Entity {
    	using System;


    /// <summary>
    /// 表名：sfdc_PNR 主键列：EmployeeNumber__c
    /// </summary>
    [SerializableAttribute()]
    public partial class sfdc_PNR : MySoft.Data.Entity
    {

        protected String _PNRID;

        protected String _EmployeeNumber__c;

        protected String _Region__c;

        protected String _Area__c;

        protected String _Name__c;

        protected Boolean? _IsActive__c;

        protected String _Type__c;

        protected String _DataType__c;

        protected String _Status__c;

        protected String _Sync_Date__c;

        protected String _Sync_Status__c;

        protected Boolean _isneedupdate;

        public String PNRID
        {
            get
            {
                return this._PNRID;
            }
            set
            {
                this.OnPropertyValueChange(_.PNRID, _PNRID, value);
                this._PNRID = value;
            }
        }

        /// <summary>
        /// PNR编码
        /// </summary>
        public String EmployeeNumber__c
        {
            get
            {
                return this._EmployeeNumber__c;
            }
            set
            {
                this.OnPropertyValueChange(_.EmployeeNumber__c, _EmployeeNumber__c, value);
                this._EmployeeNumber__c = value;
            }
        }

        /// <summary>
        /// PNR大区
        /// </summary>
        public String Region__c
        {
            get
            {
                return this._Region__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Region__c, _Region__c, value);
                this._Region__c = value;
            }
        }

        /// <summary>
        /// PNR片区
        /// </summary>
        public String Area__c
        {
            get
            {
                return this._Area__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Area__c, _Area__c, value);
                this._Area__c = value;
            }
        }

        /// <summary>
        /// PNR姓名
        /// </summary>
        public String Name__c
        {
            get
            {
                return this._Name__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Name__c, _Name__c, value);
                this._Name__c = value;
            }
        }

        /// <summary>
        /// PNR已激活
        /// </summary>
        public Boolean? IsActive__c
        {
            get
            {
                return this._IsActive__c;
            }
            set
            {
                this.OnPropertyValueChange(_.IsActive__c, _IsActive__c, value);
                this._IsActive__c = value;
            }
        }

        /// <summary>
        /// 操作类型
        /// </summary>
        public String Type__c
        {
            get
            {
                return this._Type__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Type__c, _Type__c, value);
                this._Type__c = value;
            }
        }

        /// <summary>
        /// 数据类型
        /// </summary>
        public String DataType__c
        {
            get
            {
                return this._DataType__c;
            }
            set
            {
                this.OnPropertyValueChange(_.DataType__c, _DataType__c, value);
                this._DataType__c = value;
            }
        }

        /// <summary>
        /// 同步结果
        /// </summary>
        public String Status__c
        {
            get
            {
                return this._Status__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Status__c, _Status__c, value);
                this._Status__c = value;
            }
        }

        /// <summary>
        /// 同步时间
        /// </summary>
        public String Sync_Date__c
        {
            get
            {
                return this._Sync_Date__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Sync_Date__c, _Sync_Date__c, value);
                this._Sync_Date__c = value;
            }
        }

        /// <summary>
        /// 同步状态
        /// </summary>
        public String Sync_Status__c
        {
            get
            {
                return this._Sync_Status__c;
            }
            set
            {
                this.OnPropertyValueChange(_.Sync_Status__c, _Sync_Status__c, value);
                this._Sync_Status__c = value;
            }
        }

        public Boolean isneedupdate
        {
            get
            {
                return this._isneedupdate;
            }
            set
            {
                this.OnPropertyValueChange(_.isneedupdate, _isneedupdate, value);
                this._isneedupdate = value;
            }
        }

        /// <summary>
        /// 获取实体对应的表名
        /// </summary>
        protected override MySoft.Data.Table GetTable()
        {
            return new MySoft.Data.Table<sfdc_PNR>("sfdc_PNR");
        }

        /// <summary>
        /// 获取实体中的主键列
        /// </summary>
        protected override MySoft.Data.Field[] GetPrimaryKeyFields()
        {
            return new MySoft.Data.Field[] {
    					_.EmployeeNumber__c};
        }

        /// <summary>
        /// 获取列信息
        /// </summary>
        protected override MySoft.Data.Field[] GetFields()
        {
            return new MySoft.Data.Field[] {
    					_.PNRID,
    					_.EmployeeNumber__c,
    					_.Region__c,
    					_.Area__c,
    					_.Name__c,
    					_.IsActive__c,
    					_.Type__c,
    					_.DataType__c,
    					_.Status__c,
    					_.Sync_Date__c,
    					_.Sync_Status__c,
    					_.isneedupdate};
        }

        /// <summary>
        /// 获取列数据
        /// </summary>
        protected override object[] GetValues()
        {
            return new object[] {
    					this._PNRID,
    					this._EmployeeNumber__c,
    					this._Region__c,
    					this._Area__c,
    					this._Name__c,
    					this._IsActive__c,
    					this._Type__c,
    					this._DataType__c,
    					this._Status__c,
    					this._Sync_Date__c,
    					this._Sync_Status__c,
    					this._isneedupdate};
        }

        /// <summary>
        /// 给当前实体赋值
        /// </summary>
        protected override void SetValues(MySoft.Data.IRowReader reader)
        {
            if ((false == reader.IsDBNull(_.PNRID)))
            {
                this._PNRID = reader.GetString(_.PNRID);
            }
            if ((false == reader.IsDBNull(_.EmployeeNumber__c)))
            {
                this._EmployeeNumber__c = reader.GetString(_.EmployeeNumber__c);
            }
            if ((false == reader.IsDBNull(_.Region__c)))
            {
                this._Region__c = reader.GetString(_.Region__c);
            }
            if ((false == reader.IsDBNull(_.Area__c)))
            {
                this._Area__c = reader.GetString(_.Area__c);
            }
            if ((false == reader.IsDBNull(_.Name__c)))
            {
                this._Name__c = reader.GetString(_.Name__c);
            }
            if ((false == reader.IsDBNull(_.IsActive__c)))
            {
                this._IsActive__c = reader.GetBoolean(_.IsActive__c);
            }
            if ((false == reader.IsDBNull(_.Type__c)))
            {
                this._Type__c = reader.GetString(_.Type__c);
            }
            if ((false == reader.IsDBNull(_.DataType__c)))
            {
                this._DataType__c = reader.GetString(_.DataType__c);
            }
            if ((false == reader.IsDBNull(_.Status__c)))
            {
                this._Status__c = reader.GetString(_.Status__c);
            }
            if ((false == reader.IsDBNull(_.Sync_Date__c)))
            {
                this._Sync_Date__c = reader.GetString(_.Sync_Date__c);
            }
            if ((false == reader.IsDBNull(_.Sync_Status__c)))
            {
                this._Sync_Status__c = reader.GetString(_.Sync_Status__c);
            }
            if ((false == reader.IsDBNull(_.isneedupdate)))
            {
                this._isneedupdate = reader.GetBoolean(_.isneedupdate);
            }
        }

        public override int GetHashCode()
        {
            return base.GetHashCode();
        }

        public override bool Equals(object obj)
        {
            if ((obj == null))
            {
                return false;
            }
            if ((false == typeof(sfdc_PNR).IsAssignableFrom(obj.GetType())))
            {
                return false;
            }
            if ((((object)(this)) == ((object)(obj))))
            {
                return true;
            }
            return false;
        }

        public class _
        {

            /// <summary>
            /// 表示选择所有列，与*等同
            /// </summary>
            public static MySoft.Data.AllField All = new MySoft.Data.AllField<sfdc_PNR>();

            /// <summary>
            /// 字段名：PNRID - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field PNRID = new MySoft.Data.Field<sfdc_PNR>("PNRID");

            /// <summary>
            /// PNR编码 - 字段名：EmployeeNumber__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field EmployeeNumber__c = new MySoft.Data.Field<sfdc_PNR>("EmployeeNumber__c");

            /// <summary>
            /// PNR大区 - 字段名：Region__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Region__c = new MySoft.Data.Field<sfdc_PNR>("Region__c");

            /// <summary>
            /// PNR片区 - 字段名：Area__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Area__c = new MySoft.Data.Field<sfdc_PNR>("Area__c");

            /// <summary>
            /// PNR姓名 - 字段名：Name__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Name__c = new MySoft.Data.Field<sfdc_PNR>("Name__c");

            /// <summary>
            /// PNR已激活 - 字段名：IsActive__c - 数据类型：Boolean(可空)
            /// </summary>
            public static MySoft.Data.Field IsActive__c = new MySoft.Data.Field<sfdc_PNR>("IsActive__c");

            /// <summary>
            /// 操作类型 - 字段名：Type__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Type__c = new MySoft.Data.Field<sfdc_PNR>("Type__c");

            /// <summary>
            /// 数据类型 - 字段名：DataType__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field DataType__c = new MySoft.Data.Field<sfdc_PNR>("DataType__c");

            /// <summary>
            /// 同步结果 - 字段名：Status__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Status__c = new MySoft.Data.Field<sfdc_PNR>("Status__c");

            /// <summary>
            /// 同步时间 - 字段名：Sync_Date__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Sync_Date__c = new MySoft.Data.Field<sfdc_PNR>("Sync_Date__c");

            /// <summary>
            /// 同步状态 - 字段名：Sync_Status__c - 数据类型：String
            /// </summary>
            public static MySoft.Data.Field Sync_Status__c = new MySoft.Data.Field<sfdc_PNR>("Sync_Status__c");

            /// <summary>
            /// 字段名：isneedupdate - 数据类型：Boolean
            /// </summary>
            public static MySoft.Data.Field isneedupdate = new MySoft.Data.Field<sfdc_PNR>("isneedupdate");
        }
    }
}
